home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / AGSSC10.ZIP / AGSSC.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-10-31  |  4KB  |  214 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  INTEGER001
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     String   TSTRING001(16)
  23.     String   STRING002
  24.     String   STRING003
  25.     String   TSTRING004(16)
  26.  
  27. ;------------------------------------------------------------------------------
  28.  
  29.     RdUNet PcbNode()
  30.     STRING003 = "UPDOWN82" + Chr(13)
  31.     WrUNet PcbNode(), "Q", UN_Name(), UN_City(), "USiNG AGS SySoP CMDs", " "
  32.     TSTRING001(1) = "  ≡01≡      LiST / PRiNT CaLLeR'z LoG            "
  33.     TSTRING001(2) = "  ≡02≡      LiST / PRiNT uSeR'z LoG              "
  34.     TSTRING001(3) = "  ≡03≡      PaCK / ReNuMBeR MeSSaGeS             "
  35.     TSTRING001(4) = "  ≡04≡      ReCoVeR a KiLLeD MeSSaGe             "
  36.     TSTRING001(5) = "  ≡05≡      LiST MeSSaGe HeaDeRS                 "
  37.     TSTRING001(6) = "  ≡06≡      VieW aNy SySTeM FiLe                 "
  38.     TSTRING001(7) = "  ≡07≡      uSeR MaiTeNaNCe                      "
  39.     TSTRING001(8) = "  ≡08≡      PaCK THe uSeR'z FiLe                 "
  40.     TSTRING001(9) = "  ≡09≡      eXiT To DoS FRoM ReMoTe              "
  41.     TSTRING001(10) = "  ≡10≡      PeRFoRM DoS FuNCTioN                 "
  42.     TSTRING001(11) = "  ≡11≡      VieW oTHeR NoDe uSeRS                "
  43.     TSTRING001(12) = "  ≡12≡      LoGoFF aLTeRNaTe NoDe                "
  44.     TSTRING001(13) = "  ≡13≡      VieW aLTeRNaTe NoDe CaLLeR LoG       "
  45.     TSTRING001(14) = "  ≡14≡      DRoP aLTeRNaTe NoDe To DoS           "
  46.     TSTRING001(15) = "  ≡15≡      ReCyCLe a NoDe                       "
  47.     TSTRING001(16) = "  ≡00≡      QuiT BaCK To NoRMaL BoaRD FuNCTioNS  "
  48.     Cls
  49.     If (Exist(PPEPath() + "AGSSC.CFG")) Goto LABEL001
  50.     Cls
  51.     PrintLn "@X0FC@X07oNFiGuRaTioN FiLe NoT FouN@X08D"
  52.     PrintLn "@X0Fe@X07XiTiNG..@X08."
  53.     Newline
  54.     Wait
  55.     End
  56.     :LABEL001
  57.     FOpen 1, PPEPath() + "AGSSC.CFG", 0, 0
  58.     For INTEGER003 = 1 To 15
  59.         FGet 1, TSTRING004(INTEGER003)
  60.     Next
  61.     FClose 1
  62.     If (CurSec() < SysopSec()) Then
  63.         Cls
  64.         PrintLn "@X0FT@X07HiS PPe iS a SySoPS oNLy FuNCTio@X08N"
  65.         PrintLn "@X0FS@X07oRRy, You CaN NoT uSe iT !!!!!!!@X08!"
  66.         Newline
  67.         Wait
  68.         End
  69.     Endif
  70.     Print "@POFF@"
  71.     DispFile PPEPath() + "AGSSCMN.PCB", 0
  72.     Color 7
  73.     For INTEGER003 = 1 To 16
  74.         AnsiPos 29, INTEGER003 + 5
  75.         PrintLn TSTRING001(INTEGER003)
  76.     Next
  77.     Print "@X1F"
  78.     AnsiPos 29, 6
  79.     Print Upper(TSTRING001(1))
  80.     INTEGER001 = 1
  81.     INTEGER002 = 1
  82.     STRING002 = "#"
  83.     :LABEL002
  84.     STRING002 = Inkey()
  85.     If (InStr(STRING003, STRING002) == 0) Goto LABEL002
  86.     If (((STRING002 == "UP") || (STRING002 == "8")) && (INTEGER001 > 1)) Then
  87.         INTEGER002 = INTEGER001
  88.         INTEGER001 = INTEGER001 - 1
  89.         Gosub LABEL003
  90.     Endif
  91.     If (((STRING002 == "DOWN") || (STRING002 == "2")) && (INTEGER001 < 16)) Then
  92.         INTEGER002 = INTEGER001
  93.         INTEGER001 = INTEGER001 + 1
  94.         Gosub LABEL003
  95.     Endif
  96.     If (STRING002 == Chr(13)) Then
  97.         If (INTEGER001 == 16) Then
  98.             Color 7
  99.             Cls
  100.             PrintLn "@X01A@X09E@X0FGiS CoRP SySoP MeNu aBoRTeD..."
  101.             Newline
  102.             Wait
  103.             End
  104.         Endif
  105.         If (Upper(TSTRING004(INTEGER001)) == "INTERNAL") Then
  106.             AnsiPos 1, 23
  107.             Color 7
  108.             KbdStuff String(INTEGER001) + Chr(13)
  109.             End
  110.         Endif
  111.         If (Upper(TSTRING004(INTEGER001)) <> "INTERNAL") Then
  112.             AnsiPos 1, 23
  113.             Color 7
  114.             Call TSTRING004(INTEGER001)
  115.             Newline
  116.             Color 7
  117.             PrintLn "@X01T@X09H@X0FaNK You FoR uSiNG AEGiS CoRP SySoP MeNu!"
  118.             Newline
  119.             Wait
  120.         Endif
  121.         End
  122.     Endif
  123.     Goto LABEL002
  124.     End
  125.     :LABEL003
  126.     AnsiPos 29, 5 + INTEGER002
  127.     Print "@X07" + TSTRING001(INTEGER002)
  128.     AnsiPos 29, 5 + INTEGER001
  129.     Print "@X1F" + Upper(TSTRING001(INTEGER001))
  130.     Return
  131.  
  132. ;------------------------------------------------------------------------------
  133. ;
  134. ; Usage report (before postprocessing)
  135. ;
  136. ; ■ Statements used :
  137. ;
  138. ;    6       End
  139. ;    4       Cls
  140. ;    4       Wait
  141. ;    5       Color 
  142. ;    14      Goto 
  143. ;    29      Let 
  144. ;    5       Print 
  145. ;    7       PrintLn 
  146. ;    11      If 
  147. ;    1       DispFile 
  148. ;    1       FOpen 
  149. ;    1       FClose 
  150. ;    1       FGet 
  151. ;    2       Gosub 
  152. ;    1       Return
  153. ;    5       Newline
  154. ;    1       KbdStuff 
  155. ;    1       Call 
  156. ;    1       RdUNet 
  157. ;    1       WrUNet 
  158. ;    6       AnsiPos 
  159. ;
  160. ;
  161. ; ■ Functions used :
  162. ;
  163. ;    13      +
  164. ;    1       -
  165. ;    8       ==
  166. ;    1       <>
  167. ;    4       <
  168. ;    2       <=
  169. ;    1       >
  170. ;    4       >=
  171. ;    10      !
  172. ;    6       &&
  173. ;    4       ||
  174. ;    4       Upper()
  175. ;    3       Chr()
  176. ;    1       InStr()
  177. ;    1       Inkey()
  178. ;    1       String()
  179. ;    3       PPEPath()
  180. ;    2       PcbNode()
  181. ;    1       SysopSec()
  182. ;    1       UN_Name()
  183. ;    1       UN_City()
  184. ;    1       CurSec()
  185. ;    1       Exist()
  186. ;
  187. ;------------------------------------------------------------------------------
  188. ;
  189. ; Analysis flags : Cs
  190. ;
  191. ; C - Call child PPE ■ 3
  192. ;     This is usually normal, but may be a tricky way to launch some
  193. ;     sysop-only commands.
  194. ;     ■ Search for : CALL
  195. ;
  196. ; s - Sysop level access ■ 5
  197. ;     Program is reading the sysop access level, this may be normal
  198. ;     but still it is very suspect. It is the best way to give a user
  199. ;     all priviledges. Check!
  200. ;     ■ Search for : SYSOPSEC()
  201. ;
  202. ;------------------------------------------------------------------------------
  203. ;
  204. ; Postprocessing report
  205. ;
  206. ;    2       For/Next
  207. ;    0       While/EndWhile
  208. ;    7       If/Then or If/Then/Else
  209. ;    0       Select Case
  210. ;
  211. ;------------------------------------------------------------------------------
  212. ;                 AEGiS Corp - Break the routines, code against the machines!
  213. ;------------------------------------------------------------------------------
  214.